EASYV1.00嵌入式PLC的基本原理(一)
2005/7/4 12:02:00
一、嵌入式PLC概念 嵌入式PLC是指在特定的控制裝置中實(shí)現(xiàn)PLC(Programable Logic Controller)編程語言的解釋、執(zhí)行,使特定裝置在自身專用功能基礎(chǔ)上具有PLC的基本功能。 PLC編程語言(又稱梯形圖語言)是一種面向工廠自動(dòng)化工人師傅的語言,具有簡(jiǎn)潔、直觀,面向工藝流程等許多優(yōu)點(diǎn)。PLC編程語言的出現(xiàn)使控制裝置中的硬件管和面向控制流程分離,PLC制造商專注于硬件及硬件管理,工廠自動(dòng)化人員借助梯形圖語言作二次開發(fā),使同一種PLC適用于不同的控制系統(tǒng)中,形成了可編程邏輯控制器(PLC)這種概念級(jí)產(chǎn)品。 但控制產(chǎn)品的設(shè)計(jì)已發(fā)展到一個(gè)追求個(gè)性化、差異化設(shè)計(jì)的階段。常規(guī)PLC無法進(jìn)入的市場(chǎng),面臨更多的是個(gè)性化、差異化的壓力,如成本控制、特殊功能等。出現(xiàn)了工控機(jī)(IPC)、單片機(jī)嵌入板與更貼近個(gè)性化需求的控制產(chǎn)品。IPC在互連、表達(dá)、算法等方面優(yōu)勢(shì)明顯,單片機(jī)系統(tǒng)在成本控制上更加靈活。IPC由于加載了操作系統(tǒng)(如NT)其實(shí)時(shí)性、穩(wěn)定性難以滿足連續(xù)控制的苛刻要求。更適合于監(jiān)控,低層通常用PLC;單片機(jī)系統(tǒng)將硬件管理和用戶工藝流程控制混在一起,制約了它的標(biāo)準(zhǔn)化,并最終失去成本競(jìng)爭(zhēng)優(yōu)勢(shì)。 嵌入式PLC正是面向IPC和單片機(jī)系統(tǒng)開發(fā)的,它保留了PLC(借助梯形圖語言)硬件管理和工藝控制分離的優(yōu)勢(shì),結(jié)合IPC和單片機(jī)提供的更個(gè)性化、差異化的設(shè)計(jì)方法,形成一種新的控制器設(shè)計(jì)理念。當(dāng)我們?cè)贗PC中嵌入PLC的功能時(shí),我們稱之為基于PC Base的嵌入式PLC,當(dāng)我們?cè)趩纹瑱C(jī)中嵌入PLC功能時(shí),我們稱它為基于All ON One的嵌入式PLC(片級(jí)嵌入PLC)。來特別說明時(shí),嵌入式PLC指片級(jí)嵌入式PLC,以下描述以科威公司EASY V1.00嵌入式PLC為例。 二、嵌入式PLC軟件架構(gòu) 1、總體結(jié)構(gòu) EASY V1.00嵌入式PLC是一種實(shí)時(shí)性很強(qiáng)的操作系統(tǒng)軟件,總體結(jié)構(gòu)包括三個(gè)層面。 ①嵌入式PLC內(nèi)核 它完成實(shí)時(shí)任務(wù)調(diào)度,梯形圖語言解釋、執(zhí)行、通訊等基本功能,并提供二次開發(fā)驅(qū)動(dòng)接口; ②二次開發(fā)程序 通過內(nèi)核提供的外掛任務(wù),使用內(nèi)核開發(fā)各種面向具體對(duì)象個(gè)性化差異化的驅(qū)動(dòng)程序; ③終端應(yīng)用程序 指面向工藝流程控制的梯形圖語言編程; EASY V1.00總體結(jié)構(gòu) 對(duì)于二次開發(fā)人員開發(fā)面向個(gè)性化對(duì)象的驅(qū)動(dòng)程序,必須了解嵌入式PLC內(nèi)核結(jié)構(gòu),尤其是驅(qū)動(dòng)接口設(shè)計(jì)方法,下面分塊介紹內(nèi)核的各塊功能。 2、實(shí)時(shí)OS 面向小型單片機(jī),一般的實(shí)時(shí)操作系統(tǒng)無法加載,OS/Ⅱ 占用了過多的資源,EASY V1.00內(nèi)核根據(jù)任務(wù)的類別、實(shí)時(shí)要求、定制了一款專用實(shí)時(shí)OS,它無文件系統(tǒng)和內(nèi)存管理兩部分。 ①硬實(shí)時(shí)狀態(tài)下的搶占式并發(fā)任務(wù)管理 EASY V1.00內(nèi)核提供2.5ms基準(zhǔn)時(shí)基,它作為一種不可剝奪的任務(wù)循環(huán)執(zhí)行用于各類任務(wù)的監(jiān)控管理。 對(duì)于工控應(yīng)用中的異步事件采用并發(fā)式任務(wù)管理,通過各類中斷搶占任務(wù)的掛起、執(zhí)行,每類異步任務(wù)執(zhí)行前,在2.5ms任務(wù)中注冊(cè),執(zhí)行后注銷,通過2.5ms時(shí)基監(jiān)控并發(fā)任務(wù)的流量及阻塞狀況并報(bào)字到上一級(jí)任務(wù)調(diào)度。 在EASY V1.00中,存在以下異步任務(wù): *通信數(shù)據(jù)鏈絡(luò)層的字節(jié)流 *梯形圖語言中的定時(shí)器 *二次開發(fā)驅(qū)動(dòng)程序中的實(shí)時(shí)異步任務(wù) 并發(fā)任務(wù)管理是EASY V1.00中最低層的任務(wù)管理,達(dá)到ms級(jí)實(shí)時(shí)效果,單位時(shí)間內(nèi)(1ms)占用CPU機(jī)時(shí)峰值為: R T并=∑Niti I=0 Ni-1ms內(nèi)任務(wù)的最大執(zhí)行次數(shù),ti-i任務(wù)的一次執(zhí)行最大時(shí)間。 EASY V1.00并發(fā)任務(wù)實(shí)時(shí)數(shù)據(jù) T并=10ms+25ms+25ms+50Hs+40Hs+ΔT+∑Njtj j=3 R =150ms+ΔT+∑Njtj j=3 其中ΔT為驅(qū)動(dòng)異步任務(wù)管理時(shí),在2.5ms時(shí)基中占用的時(shí)間 R ∑Njtj為驅(qū)動(dòng)異步事件任務(wù)占用的時(shí)間。 j=3 R 系統(tǒng)阻塞條件為ΔT+∑Njtj>1000Hs-150Hs=750ms j=3 ②軟實(shí)時(shí)狀態(tài)下的時(shí)間片級(jí)間任務(wù)調(diào)度 PLC梯形圖語言以“掃描周期”方式逐條指令解釋執(zhí)行的,2.5ms時(shí)基監(jiān)控最大掃描時(shí)間,在規(guī)定掃描時(shí)間內(nèi)完成各項(xiàng)任務(wù)。 將執(zhí)行一條梯形圖指令及相關(guān)任務(wù)定義為一個(gè)時(shí)間片,所有時(shí)間片總和為“掃描周期”。 EASY V1.00一個(gè)時(shí)間片調(diào)度的任務(wù)如下: *執(zhí)行一條梯形圖語句 *查詢通信報(bào)文狀態(tài)及報(bào)文拆裝 *查詢梯形圖函數(shù)調(diào)用及運(yùn)行調(diào)用函數(shù) *查詢用戶軟實(shí)時(shí)任務(wù)及執(zhí)行用戶任務(wù)(用戶軟中斷) 時(shí)間片輪間占用CPU機(jī)時(shí)峰值為 4 T片=∑MRTK k=1 k為4個(gè)軟實(shí)時(shí)任務(wù),mk為每個(gè)軟實(shí)時(shí)任務(wù)的子任務(wù)數(shù),Tr為每個(gè)軟實(shí)時(shí)任務(wù)的執(zhí)行時(shí)間。 T片=3-45ms+t4 t4為用戶軟中斷任務(wù)占用時(shí)間和。 “掃描周期”指解釋、執(zhí)行所有梯形圖指令并執(zhí)行掃描結(jié)束處理所占用的時(shí)間,由于這期間有并發(fā)任務(wù)產(chǎn)生,“掃描周期”應(yīng)包括并發(fā)任務(wù)占用時(shí)間。 R 并發(fā)任務(wù)占用比X=T并/ 1ms = (150ms+ΔT+∑Njtj)/1000ms =15%-100% j=3 設(shè)用戶梯形圖含X條指令 T掃=(X.T片+ΔTend)/X ΔTend為掃描結(jié)束處理占用時(shí)間。(待續(xù))
提交
查看更多評(píng)論
其他資訊
【KEWEI】科威單板智能伺服在織帶收卷機(jī)上的應(yīng)用
【KEWEI】科威產(chǎn)品選型冊(cè)
科威六軸運(yùn)動(dòng)控制器的特點(diǎn)及功能
科威電機(jī),快速門中的“智能機(jī)”
科威觸摸屏PLC一體機(jī)組態(tài)軟件